https://karlchris.github.io/data-engineering/data-ingestion/push-pull/